with Constants; use Constants;

package Stations is

   protected type Station is

      procedure create (station: StationType);
      procedure add(id: PassengerId);
      procedure comeTrain;
      procedure leaveTrain(q: in out Passengers_Container.Vector);
      function getName return String;
      function isTrain return Boolean;

   private
      name: StationType;
      queue: Passengers_Container.Vector;
      trainInStation: Boolean := false;
   end Station;

  type StationsArray is array (StationType'First .. StationType'Last) of Station;
      StationsList: StationsArray;

end  Stations;
